home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 May: Tool Chest / Developer CD Series Tool Chest (Apple Computer)(May 1999).iso / Tool Chest / OS Utilities / Gestalt Selectors List 4.3 / Updates / GSL Update 4.2.2 < prev   
Encoding:
Text File  |  1998-10-16  |  20.7 KB  |  581 lines  |  [TEXT/R*ch]

  1.  
  2. Well, there we are.
  3. Six years after the first list with gestalt selectors,
  4. the 'Undoc. gestalt selector list'.
  5. http://www.bio.vu.nl/home/rgaros/gestalt/gestalt-09.html
  6.  
  7. Since both you and me had no great ideas for a party, we'll keep it
  8. simple this time. We'll save the real fireworks for the 10th
  9. anniversary!
  10.  
  11. I want to include a selection of the guestbook contributions of last
  12. years 5th Anniversary on-line party, which lasted a year! :-)
  13.  
  14.      "Thanx for the list, Rene. Keep up the good work."
  15.      (John C. Daub, Metrowerks)
  16.  
  17.      "Five years??? Geez, this makes me feel old.
  18.       Anyway, happy birthday GSL!" (Marco Piovanelli)
  19.  
  20.      "Happy party Rene and your GSL for the next five years!
  21.       As I was to hastily grabbing after the Heineken bottle, it fell down
  22.       and beer flow over the border of my monitor onto my desk.
  23.       It tastes good! :-)" (Marcel Hochuli)
  24.  
  25.      "GSL has always given me a tremendous insight in the development of
  26.       Apple and third party SW/HW. Congratulations."
  27.       (Henrik Nørgaard Hansen)
  28.  
  29.      "What a long strange trip it's been!" (Rob Hagopian)
  30.  
  31.      "Love the list :)
  32.       Thanks Rene :) "
  33.      (Jonathan Trott)
  34.  
  35.      "Gotta love the GSL! The web page is especially welcome.
  36.       When you need Gestalt information in a hurry, this is the place. 
  37.       Congratulations Rene!" (Quinn "The Eskimo!" )
  38.  
  39.      "Nice Job! Keep up the good work." (Jeff Guidice)
  40.  
  41.      "Thank you for maintaining this essential resource."
  42.      (Nick DeMello, MacTech)
  43.  
  44.      "Haven't we run out of four letter codes yet? ;-)" (Bob Freeman)
  45.  
  46.      "Congratulations on your 5th! Your perserverence in ferreting out and
  47.       documenting all the esoteric details of Gestalt has been nothing
  48.       short of remarkable - many thanks for the countless hours you have
  49.       saved us all! (John Mancino)
  50.  
  51. During the last six year we have seen the number of new selectors per year
  52. is also a measurement for Apple's health. I'm sure the next year will be
  53. one with plenty new selectors. With your help I will try to track all of
  54. them. I can make a pun now, but I won't... ;-)
  55.  
  56. Jean-Pierre Curcio released his revamped Gestalt.Appl application and
  57. renamed it GestaltLab. The latest test version is available for download
  58. at:
  59. http://www.bio.vu.nl/home/rgaros/gestalt/index.html#appl
  60. The new version tries to find which software installed that unknown
  61. selector and it can compare the current config with the known list and
  62. alerts to unknown selectors and bits. Real cool!
  63.  
  64. Enjoy!
  65.  
  66. Your editor,
  67. René Ros
  68.  
  69.  
  70. Gestalt Selectors List 4.2.2 Update
  71. ===================================
  72.  
  73. Maintained and published by Rene G.A. Ros (rene@rgaros.nl)
  74.  
  75. First published: 12 October 1992, 13:15 CET (GMT+1)
  76. Last version   :  8 July 1998, 19:30 CET (GMT+1)
  77. Previous update: 12 August 1998, 22:10 CET (GMT+1)
  78. Last modified  : 12 October 1998, 20:20 CET (GMT+1)
  79.  
  80. The complete version is available to subscribers by sending an email to:
  81.      gestalt-selectors-list-request@bio.vu.nl
  82. with as subject:
  83.      archive get recent/gestalt-selectors.etx
  84. or to get the compressed version:
  85.      archive get recent/gestalt-selectors.sit.hqx
  86. The latest GSL version is also available on the GSL Web page. Point your
  87. Internet browser to:
  88.      http://www.bio.vu.nl/home/rgaros/gestalt/
  89.  
  90. If this is the first update you receive since subscribing to the mailing
  91. list you may want to get the previous updates as well. Then email to the
  92. address listed above and use this command:
  93.      archive get updates/updates-comb.etx
  94.  
  95. A vertical bar in front of a line indicates the line has changed or was
  96. added.
  97.  
  98. PLEASE SEND COMMENTS AND CORRECTIONS TO THE EDITOR AS SOON AS POSSIBLE.
  99.  
  100. The following persons contributed to this update:
  101.  
  102. ===========================================================================
  103. Contributions to the selector sections
  104. ===========================================================================
  105. Person                 Software                Selector(s) added/changed
  106. ---------------------------------------------------------------------------
  107. Philippe GUEDJ         True Finder Integration cp
  108.                                                TFI5
  109.                        unknown                 Bzrd, exPR, fmPG, Ftpc,
  110.                                                MOCK, Rem!, SGLB, SMag,
  111.                                                SPRF, T42c, WZPB
  112. Peter Lewis, Stairways Software
  113.                        Assimilator ext         Asim
  114.                        Assimilator Helper ext  AsiH
  115.                        ObiWan appl             OB1K
  116. John Mancino           Appearance lib?         apvr
  117.                        AppleShare ext          afps
  118.                        System                  usbv
  119.                        System?                 irhw, irsw
  120. Rene Ros               ColorSync ext           cmtc
  121. Robert M. Seretny      System                  bclk
  122. Eden Sherry            ScrollMagick/Scrollability cp
  123.                                                SMag
  124.                        Snap-To cp              ST20, ST21
  125. ---------------------------------------------------------------------------
  126.  
  127. ===========================================================================
  128. Contributions to the non-selector sections
  129. ===========================================================================
  130. Person                 Chapter/Section
  131. ---------------------------------------------------------------------------
  132.  
  133. ---------------------------------------------------------------------------
  134.  
  135. Apple System Software (A-D)
  136. ===========================
  137.  afps (AppleShare ext [3.5?], part of System 7.5) &AD18, &AT20
  138.       gestaltAppleShareClientVersion?
  139.       Returns the version of the AppleShare client software as integer in
  140.       the low-word of the response. The high-word of the response returns
  141.       information about the AppleShare client software.
  142.       (Rene Ros, Jean-Pierre Curcio)
  143.  
  144.       enum {
  145.       gestaltAFPClient              = FOUR_CHAR_CODE('afps'),
  146.       gestaltAFPClientVersionMask   = 0x0000FFFF,
  147.                                               /* low word of long is
  148.                                                  the client version
  149.                                                  0x0001 -> 0x0007 */
  150.       gestaltAFPClient3_5           = 0x0001,
  151.       gestaltAFPClient3_6           = 0x0002,
  152.       gestaltAFPClient3_6_1         = 0x0003,
  153.       gestaltAFPClient3_6_2         = 0x0004,
  154.       gestaltAFPClient3_6_3         = 0x0005, /* including 3.6.4, 3.6.5*/
  155.       gestaltAFPClient3_7           = 0x0006, /* including 3.7.1 */
  156.       gestaltAFPClient3_7_2         = 0x0007, /* including 3.7.3 */
  157.       gestaltAFPClient3_8?          = 0x0008, /* With Mac OS 8.5 */
  158.  
  159.       gestaltAFPClientAttributeMask = (long)0xFFFF0000,
  160.                                               /* high word of long is a
  161.                                                  set of attribute bits */
  162.       gestaltAFPClientCfgRsrc       = 16, /* Client uses config resources*/
  163. |     gestaltAFPClientUAMv2         = 27, /* AFP client supports the 1998
  164. |                                            UAM interface v2 */
  165.       gestalt???                    = 28, /* with Mac OS 8.5 */
  166.       gestaltAFPClientSupportsIP    = 29, /* Client supports AFP over
  167.                                              TCP/IP*/
  168.       gestaltAFPClientVMUI          = 30, /* Client can put up UI from
  169.                                              the PBVolMount trap*/
  170.       gestaltAFPClientMultiReq      = 31  /* Client supports multiple
  171.                                              outstanding requests*/
  172.       };
  173.  
  174.  apvr (Appearance lib? [1.0.1?])
  175.       gestaltAppearanceVersion
  176. |     Returns the version of Appearance as BCD.
  177.  
  178.       #define gestaltAppearanceVersion 'apvr' /* Appearance version */
  179.  
  180.       NOTE:
  181.       The presence of gestaltAppearanceAttr ('appr') and the absence of
  182.       this selector indicates version 1.0 of the Appearance Mgr is
  183.       present. (Anonymous)
  184.       
  185.       Version 1.0.2 returns the same value as version 1.0.1 does.
  186.  
  187.  bclk (System [7.5.2?) INF?
  188.       gestaltBusClkSpeed &AS22
  189.       Returns the main I/O bus clock speed in Hz.
  190.  
  191.       #define gestaltBusClkSpeed 'bclk'
  192.  
  193.       NOTES:
  194.       Only on Power Macintosh, not on 68K computers?
  195.  
  196.       Some 604-based Power Computing models return the wrong value.
  197.  
  198.       A Daystar Genesis MP (4x 604e at 200 MHz each) returns a value of
  199.       50 MHz. There is no sign of a selector which returns the number of
  200.       processors.
  201.  
  202.       The Pippin has been observed to return the value for 66 MHz, which
  203. |     is equal to its processor clock speed. This value is correct, it was
  204. |     the only Macintosh to run the processor at 1:1, and with quickdraw in
  205. |     RAM, it ran at about PowerMac 7100/80 speeds WITHOUT any L2 cache and
  206. |     just 5MB of RAM. (Robert M. Seretny, former Pippin-engineer)
  207.  
  208.       A Power Macintosh 700 (PPC upgraded Quadra 700) using System 7.5.5
  209.       returns 2 MHz. The 'pclk' value is also incorrect.
  210.  
  211.       See also 'pclk' in this chapter.
  212.  
  213.  cmtc (ColorSync ext [1.0?])
  214.       gestaltColorMatchingVersion
  215.       Returns the version of the Color Matching software as BCD.
  216.  
  217.       enum {
  218.       #define gestaltColorMatchingVersion 'cmtc' /* Color Matching
  219.                                                      version */
  220.       gestaltColorSync10  = 0x0100,  /* &AD09 */
  221.       gestaltColorSync11  = 0x0110,  /* &AD09 */
  222.       gestaltColorSync104 = 0x0104,  /* &AD09 */
  223.       gestaltColorSync105 = 0x0105,  /* &AD09 */
  224.       gestaltColorSync20  = 0x0200,  /* &AD17/AD21 */
  225.       gestaltColorSync21  = 0x0210,
  226.       gestaltColorSync211 = 0x0211,
  227.       gestaltColorSync212 = 0x0212,
  228.       gestaltColorSync213 = 0x0213,
  229.       gestaltColorSync25  = 0x0250,
  230. |     gestaltColorSync251 = 0x0251};
  231.  
  232.       NOTE:
  233.       ColorSync 1.0 returns gestaltColorSync10 for the version of the
  234.       utilities that work with System 6.0.7. And gestaltColorSync11 is
  235.       returned by the version that works with System 7.0 and later.
  236.       From version 1.0.4 up the correct version is returned. &AD17
  237.  
  238.  dtpf (System? [8.1?])
  239.       gestaltDTPFeatures
  240. |     Returns information about the Desktop Printing features.
  241.  
  242.       enum {
  243.       #define gestaltDTPFeatures 'dtpf'
  244. |     gestalt???              = 0x00000001,
  245. |     gestalt???              = 0x00000002,
  246. |     kDTPThirdPartySupported = 0x00000004}; /* supports third party
  247. |                                               drivers, since Mac OS 8.5 */
  248.  
  249.  dtpx (Desktop Printer Extension ext [2.0],
  250.        part of Desktop Printing 2.0 and LaserWriter 8, Version 8.4 or later)
  251. |     gestaltDTPInfo &AT24
  252. |    Returns a handle to a GestaltDTPInfo structure (listed below). The
  253. |     handle theDTPList points to a list of DTPInfo structures.
  254.  
  255. |     #define gestaltDTPInfo 'dtpx' /* gestalt selector for the PFE DTP */
  256. |     #define kGestaltPFEInfo gestaltDTPInfo
  257.  
  258. |     enum {
  259. |     kDTPGestaltStructVersion2 = 0x02008000,
  260. |     // version 2.0f0 (for Mac OS 8.0, 8.1 and 7.x)
  261. |     kDTPGestaltStructVersion3 = 0x03000000
  262. |     // version 3.0 (for Mac OS 8.5)
  263. |     };
  264. |
  265. |     // DTPInfo
  266. |     typedef struct {
  267. |       short   vRefNum;      // vRefNum of the DTP folder
  268. |       long    dirID;        // directory ID of the DTP folder
  269. |       Str31   dtpName;      // name of the DTP folder
  270. |       OSType  driverType;   // creator type of the print driver
  271. |                                for this DTP
  272. |       Boolean current;      // is this DTP currently the default printer?
  273. |       Str32   printerName;  // name of the actual printer on the net 
  274. |                             // (only for LaserWriter 8 dtps)
  275. |       Str32   zoneName;     // zone where this printer resides 
  276. |                             // (only for LaserWriter 8 dtps)
  277. |     } DTPInfo;
  278. |
  279. |     // data associated with the desktop printer info gestalt
  280. |     typedef struct {
  281. |       long    version;           // kDTPGestaltStructVersion3 or
  282. |                                  // kDTPGestaltStructVersion2
  283. |       short   numDTPs;           // number of the active dtps
  284. |       Handle  theDTPList;        // handle to a list of DTPInfo for the
  285. |                                  // active dtps
  286. |       Handle  theDTPDriverList;  // handle to a list of print drive
  287. |                                  // file specs for each of the active
  288. |                                  // dtp in theDTPList
  289. |       long    reserved;
  290. |     } GestaltDTPInfo, **GestaltDTPInfoHdle;
  291.  
  292.       // BELOW ARE OLD STRUCTURES
  293.       typedef struct
  294.       {
  295.         long    version;    /* version of the Nessie that is running */
  296.         short   numDTPs;    /* number of desktop printer in the list */
  297.         Handle  theDTPList;
  298.       } GestaltPFEInfo, **GestaltPFEInfoHdle;
  299.  
  300.       typedef struct
  301.       {
  302.         short   vRefNum;    /* vRefNum of the DTP folder */
  303.         long    dirID;      /* directory ID of the DTP folder */
  304.         Str31   dtpName;    /* name of the DTP folder */
  305.         OSType  driverType; /* creator type of the print driver for this
  306.                                 DTP */
  307.         Boolean current;    /* is this DTP currently the default printer */
  308.         Str32   printerName;/* name of the actual printer on the net
  309.                                 (only for LW8.4 dtps) */
  310.         Str32   zoneName;   /* zone where this printer resides (only for
  311.                                 LW8.4 dtps) */
  312.       } DTPInfo, *DTPInfoPtr;
  313.  
  314. |     NOTE:
  315. |     See the source tech note (1079) for more detailed information.
  316.  
  317. Apple System Software (E-H)
  318. ===========================
  319. No changes.
  320.  
  321. Apple System Software (I-L)
  322. ===========================
  323. No changes.
  324.  
  325. Apple System Software (M)
  326. =========================
  327. No changes.
  328.  
  329. Apple System Software (N-O)
  330. ===========================
  331. No changes.
  332.  
  333. Apple System Software (P-S)
  334. ===========================
  335. No changes.
  336.  
  337. Apple System Software (T-Z)
  338. ===========================
  339.  usbv {System? [8.5?])
  340.       Returns the version of ATSU Universal Serial Bus (USB) support
  341. |     software as NumVersion.
  342.  
  343.       #define gestaltUSBVersion 'usbv'
  344.  
  345. Apple Additional Software
  346. =========================
  347. No changes.
  348.  
  349. Third Parties Software
  350. ======================
  351. |AsiH (Assimilator Helper ext [2.0], part of Assimilator
  352. |                                    by Stairways Software)
  353. |     gestaltAssimilatorHelperState
  354. |     Returns the state of the machine (booting, normal, restarting,
  355. |     shutting down) as a value (not attribute bits!).
  356.  
  357. |     enum {
  358. |     #define gestaltAssimilatorHelperState 'AsiH'
  359. |     HS_Booting    = 1,
  360. |     HS_Normal     = 2,
  361. |     HS_Restarting = 3,
  362. |     HS_Shutdown   = 4};
  363. |
  364. |Asim (Assimilator ext [1.0], part of Assimilator by Stairways Software)
  365. |     gestaltAssimilatorSharedData
  366. |     Returns a pointer to a private data structure (undocumented).
  367. |
  368. |     #define gestaltAssimilatorSharedData 'Asim'
  369.  
  370. |OB1K (ObiWan appl [4.0], part of Assimilator by Stairways Software)
  371. |     gestaltObiWanLookup
  372. |     Returns the address of the lookup procedure, a UPP to a function.
  373. |
  374. |     #define gestaltObiWanLookup 'OB1K'
  375. |
  376. |     function DoObiwanLookup( cmd: longint; const key: Str255;
  377. |              var linecnt: longint; var result: linesArray ): OSErr;
  378. |     where cmd can be one of the following values:
  379. |     command_find_exhaustive = 1;
  380. |     command_next_exhaustive = 2;
  381. |     command_find = 3;
  382. |     command_next = 4;
  383.  
  384. |SMag (ScrollMagick/Scrollability cp [all] by Eden Sherry)
  385. |     Returns a pointer to a private data structure (undocumented).
  386.  
  387. |ST20 (Snap-To cp [2.0] by Eden Sherry)
  388. |     Returns a pointer to a private data structure (undocumented).
  389.  
  390. |ST21 (Snap-To cp [2.1] by Eden Sherry)
  391. |     Returns a pointer to a private data structure (undocumented).
  392.  
  393. |TFI5 (True Finder Integration cp [???] by Aladdin Systems, Inc.)
  394. |     Returned response is private.
  395.  
  396. Unknown Apple Software (A-K)
  397. ============================
  398.  dtpf (System? [8.1?])
  399.       Desktop Printing features?
  400.       Observed: 0x03 (Mac OS 8.1), 0x0F (Mac OS 8.2)
  401.  
  402. |     enum {
  403. |     kThirdPartySupport = 0x00000004}; /* supports third party drivers,
  404. |                                          since Mac OS 8.5 */
  405.  
  406.  irhw (IRTalk ext ? [???])
  407.       (System? [???])
  408. |     gestaltInfraredHardwareAttr?
  409. |     Returns information about the Infrared hardware?
  410.  
  411. |     #define gestaltInfraredHardwareAttr? 'irhw'
  412.  
  413.       NOTE:
  414.       On a PM 7100 with System 7.5.3 universal this selector returns noErr
  415.       and a response value of zero. (Jean-Pierre Curcio)
  416.       It returns 4 on a PowerBook 5300ce (System 7.5.5 US and KanjiTalk
  417.       J1-7.5.3) but it crashes MacsBug. Only by replacing 'eajt' in the
  418.       Gestalt dcmd of MacsBug 6.5.3 with 'irhw' ('eajt' is ignored by the
  419.       Gestalt dcmd!) the crash can be diverted.
  420.       This selector is ignored with MacsBug 6.5.4a4 or later.
  421.       (Masatsugu Nagata)
  422.  
  423.  irsw (IRTalk ext ? or System ? [7.6?] on PowerBook 3400c/180)
  424. |     gestaltInfraredSoftwareVersion?
  425. |     Returns the version/type of the Infrared software?
  426.  
  427. |     enum {
  428. |     #define gestaltInfraredSoftwareVersion? 'irsw'
  429. |     gestaltInfraredIrDA?   = 0x00020000,
  430. |     gestaltInfraredIRTalk? = 0x00080000};
  431.  
  432. Unknown Apple Software (L-Z)
  433. ============================
  434. No changes.
  435.  
  436. Unknown Third Parties Software
  437. ==============================
  438. |Bzrd (???)
  439. |exPR (???)
  440. |fmPG (???)
  441. |Ftpc (???)
  442. |MOCK (???)
  443. |Rem! (???)
  444. |SGLB (???)
  445. |SMag (???)
  446. |SPRF (???)
  447. |T42c (???)
  448. |     NOTE: The 4 is actually the option-4 character (0x24).
  449.  
  450. |WZPB (???)
  451.  
  452. Reports
  453. =======
  454. No changes.
  455.  
  456. General Info
  457. ============
  458.  
  459. Sources
  460. -------
  461. A    Apple Computer, Inc.
  462. AS    Source code & header files
  463. AT    Technical Notes
  464. AT24   TN 1079 - Desktop Printing Revealed
  465.  
  466. The Technical Notes can be found at:
  467. http://developer.apple.com/technotes/index.html
  468.  
  469. About this list
  470. ===============
  471. For this update this chapter only includes the 'Gestalt Submission Form',
  472. 'Acknowledgements' and 'Editors' Address' sections.
  473.  
  474. Gestalt Submission Form
  475. -----------------------
  476. You can use this form to report information you found on already included
  477. selectors. But you can also use it to register new Gestalt selector codes.
  478. If you want to register the selector code your software installs, make sure
  479. you registered your code first with Apple Computer, Inc. Also, it is your
  480. good right if you chose to keep the meaning of the response value private.
  481. If so, still register so that others can at least detect your software by
  482. determining if the selector is present.
  483.  
  484. Software means, in this form, the software which installs the selector
  485. code. Not the whole package, just the extension or control panel (perhaps
  486. application) itself.
  487. The package is the product name in which the software is included and
  488. distributed.
  489. If data is not available or relevant, leave it blank. When the selector
  490. contains non-ASCII characters, please also provide the hexadecimal value.
  491.  
  492. You can also fill in this form on-line because it is also on the WWW
  493. pages of the GSL: http://www.bio.vu.nl/home/rgaros/gestalt/
  494.  
  495.  
  496. Your name: 
  497.  
  498. Your email address: 
  499.  
  500. Your company name: 
  501.  
  502. Do you want to remain anonymous? Yes / No
  503.  
  504. Category:      O Apple System Software
  505.                O Apple Additional Software
  506.                O Apple Software
  507.                O Third Parties Software
  508.  
  509. Gestalt Selector: 
  510.  
  511. Software name: 
  512.  
  513. Software type: O application 
  514.                O control panel
  515.                O extension (also 'appe')
  516.                O other:
  517.  
  518. First version to install selector: 
  519.  
  520. Package name: 
  521.  
  522. Author or Company name: 
  523.  
  524. Constant name: 
  525.  
  526. Source of information: 
  527.  
  528. Short description of the returned response:
  529.  
  530.  
  531.  
  532.  
  533.  
  534. Additional constant names and values for the response value meaning:
  535.  
  536.  
  537.  
  538.  
  539.  
  540. Please email this form to this Internet address: rene@rgaros.nl
  541.  
  542. Acknowledgements
  543. ----------------
  544. I want to thank the following persons for their contributions to this
  545. update and their support of this list:
  546.  
  547. ===========================================================================
  548. Name                                       Internet Email Address
  549. ---------------------------------------------------------------------------
  550. Lars Christensen                           elenzee@yahoo.com
  551. Philippe GUEDJ                             philippe@guedj.net
  552. Peter N. Lewis, Stairways Software         peter@stairways.com.au
  553. John Mancino, Decision Maker's Software    mancino@decismkr.com
  554. Robert M. Seretny                          spambrat@quanta.paypc.com
  555. Eden Sherry                                eden@kagi.com
  556. ---------------------------------------------------------------------------
  557.  
  558. Legal Stuff
  559. -----------
  560. (C) 1992-1998, Rene G.A. Ros
  561.  
  562. It is not allowed to distribute the GSL updates separate from the full GSL.
  563. The full GSL can be used freely but is not public domain.
  564. See for legal information the Legal Stuff chapter of the full Gestalt
  565. Selectors List.
  566.  
  567. Editor's Address
  568. ----------------
  569. Rene G.A. Ros
  570. Developer and consultant at S&B Office Services, Woerden, The Netherlands
  571. Consultant to the Computer Department,
  572.     Biology Faculty, Vrije Universiteit Amsterdam, The Netherlands.
  573.  
  574. Email: rene@rgaros.nl (preferred)
  575.        rene_ros@office.nl (work)
  576.        reneros.gsm@gin.nl
  577.        rgaros@bio.vu.nl
  578.        rgaros@dds.nl
  579. WWW  : http://www.bio.vu.nl/home/rgaros/
  580.        http://huizen.dds.nl/~rgaros
  581.